package com.ruoyi.system.domain;

import com.fasterxml.jackson.annotation.JsonFormat;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;
import com.ruoyi.common.annotation.Excel;
import com.ruoyi.common.core.domain.BaseEntity;

import java.util.Date;

/**
 * 企业信息管理对象 gw_enterprise_info
 * 
 * @author ruoyi
 * @date 2025-05-06
 */
public class GwEnterpriseInfo extends BaseEntity
{
    private static final long serialVersionUID = 1L;

    /** ID */
    private String id;

    /** 企业名称 */
    @Excel(name = "企业名称")
    private String enterpriseName;

    /** 手机号码 */
    @Excel(name = "手机号码")
    private String phone;

    /** 联系人 */
    @Excel(name = "联系人")
    private String contacts;

    /** 所属地区 */
    @Excel(name = "所属地区")
    private String region;

    /** 所属行业 */
    @Excel(name = "所属行业")
    private String industry;

    /** 统一社会信用代码 */
    @Excel(name = "统一社会信用代码")
    private String usci;
    /**登录密码*/
    private String password;
    /**试用天数*/
    private Long tryDays;
    /**所属代理商id*/
    private String agentId;
    /**状态 1 有效 2 过期*/
    private String status;
    /**权益套餐id*/
    private String rightsId;
    /**有效时间*/
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private Date effectiveTime;
    /**版本类型 1 试用版 2 正式版*/
    private String versionType;
    /**推荐人手机*/
    private String recommendPhone;
    /**查询代理商名称*/
    private String agentName;
    /**查询开始时间*/
    @JsonFormat(pattern = "yyyy-MM-dd")
    private Date startDate;
    /**查询结束时间*/
    @JsonFormat(pattern = "yyyy-MM-dd")
    private Date endDate;

    /**企业logo*/
    private String logo;
    /**合同总数量*/
    private Long contractAllNum;
    /**合同已用数量*/
    private Long contractUseNum;
    /**短信总数量*/
    private Long smsAllNum;
    /**短信已用数量*/
    private Long smsUseNum;

    /**合同剩余数量*/
    private Long contractSurplusNum;

    /**短信剩余数量*/
    private Long smsSurplusNum;
    /**电子签openId*/
    private String signOpenId;
    /**认证状态 0 未认证 1 已认证*/
    private String certificationStatus;


    public void setId(String id) 
    {
        this.id = id;
    }

    public String getId() 
    {
        return id;
    }

    public String getRecommendPhone() {
        return recommendPhone;
    }

    public String getCertificationStatus() {
        return certificationStatus;
    }

    public void setCertificationStatus(String certificationStatus) {
        this.certificationStatus = certificationStatus;
    }

    public void setRecommendPhone(String recommendPhone) {
        this.recommendPhone = recommendPhone;
    }

    public String getVersionType() {
        return versionType;
    }

    public void setVersionType(String versionType) {
        this.versionType = versionType;
    }

    public String getPassword() {
        return password;
    }

    public void setPassword(String password) {
        this.password = password;
    }

    public Long getTryDays() {
        return tryDays;
    }

    public void setTryDays(Long tryDays) {
        this.tryDays = tryDays;
    }

    public String getLogo() {
        return logo;
    }

    public void setLogo(String logo) {
        this.logo = logo;
    }

    public String getAgentName() {
        return agentName;
    }

    public void setAgentName(String agentName) {
        this.agentName = agentName;
    }

    public Date getStartDate() {
        return startDate;
    }

    public void setStartDate(Date startDate) {
        this.startDate = startDate;
    }

    public Date getEndDate() {
        return endDate;
    }

    public void setEndDate(Date endDate) {
        this.endDate = endDate;
    }

    public String getAgentId() {
        return agentId;
    }

    public void setAgentId(String agentId) {
        this.agentId = agentId;
    }

    public String getStatus() {
        return status;
    }

    public void setStatus(String status) {
        this.status = status;
    }

    public String getRightsId() {
        return rightsId;
    }

    public void setRightsId(String rightsId) {
        this.rightsId = rightsId;
    }

    public Date getEffectiveTime() {
        return effectiveTime;
    }

    public void setEffectiveTime(Date effectiveTime) {
        this.effectiveTime = effectiveTime;
    }

    public void setEnterpriseName(String enterpriseName)
    {
        this.enterpriseName = enterpriseName;
    }

    public String getEnterpriseName() 
    {
        return enterpriseName;
    }

    public void setPhone(String phone) 
    {
        this.phone = phone;
    }

    public String getPhone() 
    {
        return phone;
    }

    public void setContacts(String contacts) 
    {
        this.contacts = contacts;
    }

    public String getContacts() 
    {
        return contacts;
    }

    public void setRegion(String region) 
    {
        this.region = region;
    }

    public String getRegion() 
    {
        return region;
    }

    public void setIndustry(String industry) 
    {
        this.industry = industry;
    }

    public String getIndustry() 
    {
        return industry;
    }

    public void setUsci(String usci) 
    {
        this.usci = usci;
    }

    public String getUsci() 
    {
        return usci;
    }

    public Long getContractAllNum() {
        return contractAllNum;
    }

    public void setContractAllNum(Long contractAllNum) {
        this.contractAllNum = contractAllNum;
    }

    public Long getContractUseNum() {
        return contractUseNum;
    }

    public void setContractUseNum(Long contractUseNum) {
        this.contractUseNum = contractUseNum;
    }

    public Long getSmsAllNum() {
        return smsAllNum;
    }

    public void setSmsAllNum(Long smsAllNum) {
        this.smsAllNum = smsAllNum;
    }

    public Long getSmsUseNum() {
        return smsUseNum;
    }

    public void setSmsUseNum(Long smsUseNum) {
        this.smsUseNum = smsUseNum;
    }

    public Long getContractSurplusNum() {
        return contractSurplusNum;
    }

    public void setContractSurplusNum(Long contractSurplusNum) {
        this.contractSurplusNum = contractSurplusNum;
    }

    public Long getSmsSurplusNum() {
        return smsSurplusNum;
    }

    public void setSmsSurplusNum(Long smsSurplusNum) {
        this.smsSurplusNum = smsSurplusNum;
    }

    public String getSignOpenId() {
        return signOpenId;
    }

    public void setSignOpenId(String signOpenId) {
        this.signOpenId = signOpenId;
    }

    @Override
    public String toString() {
        return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
            .append("id", getId())
            .append("enterpriseName", getEnterpriseName())
            .append("phone", getPhone())
            .append("contacts", getContacts())
            .append("region", getRegion())
            .append("industry", getIndustry())
            .append("usci", getUsci())
            .append("createBy", getCreateBy())
            .append("createTime", getCreateTime())
            .append("updateBy", getUpdateBy())
            .append("updateTime", getUpdateTime())
            .append("remark", getRemark())
            .toString();
    }
}
